package com.cleaningcloud.cld.mapper.mini;

import com.cleaningcloud.cld.domain.mini.MiniExportDto;

import java.util.List;
import java.util.Map;

public interface MiniExportMapper {

    /**
     * @Author Shaw
     * @Description 统计在职人数
     * @date: 2025-06-25 15:25
     * @param: //TODO
     */
    List<MiniExportDto> getStaffNumberByProjectGroup(Long projectId);

    /**
     * @Author Shaw
     * @Description 统计排休人数
     * @date: 2025-06-25 15:25
     * @param: //TODO
     */
    List<MiniExportDto> getRestbreakNumberByProjectGroup(MiniExportDto miniExportDto);

    /**
     * @Author Shaw
     * @Description 统计出勤人数
     * @date: 2025-06-25 15:25
     * @param: //TODO
     */
    Map<String, Object> getAttendanceNumberByProjectGroup(MiniExportDto miniExportDto);

    /**
     * @Author Shaw
     * @Description 统计排休人数
     * @date: 2025-06-25 15:25
     * @param: //TODO
     */
    List<MiniExportDto> getMaterialNumberByType(MiniExportDto miniExportDto);

    /**
     * @Author Shaw
     * @Description 统计设备状态
     * @date: 2025-06-25 15:25
     * @param: //TODO
     */
    Map<String, Object> getAssetsNumberByProject(MiniExportDto miniExportDto);

    /**
     * @Author Shaw
     * @Description 统计工作计划
     * @date: 2025-06-25 15:25
     * @param: //TODO
     */
    Map<String, Object> getWorkPlanNumberByProject(MiniExportDto miniExportDto);

    /**
     * @Author Shaw
     * @Description 获取例会列表
     * @date: 2025-06-26 15:12
     * @param: //TODO
     */
    List<MiniExportDto> getRegularListByProject(MiniExportDto miniExportDto);

    /**
     * @Author Shaw
     * @Description 统计临时工作安排
     * @date: 2025-06-25 15:25
     * @param: //TODO
     */
    Map<String, Object> getTemporaryNumberByProject(MiniExportDto miniExportDto);

    /**
     * @Author Shaw
     * @Description 统计客户处置
     * @date: 2025-06-25 15:25
     * @param: //TODO
     */
    Map<String, Object> getComplaintsNumberByProject(MiniExportDto miniExportDto);

}
